package util;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;


public class Parametros {
         
	public static String SEPARATOR = System.getProperty("file.separator");
	public static String ARMAZENAMENTO = System.getProperty("user.dir")
			+ SEPARATOR +"dados";
	public static Integer NUMERO_PAGINAS = 2;
	
	
	//Tags
	public static String DESCRICAO = "meta[name=description]";
	public static String PALAVRAS_CHAVE = "meta[name=keywords]";
		
	public static String URL = "meta[property=og:url]";
	public static String TITULO = "meta[property=og:title]";
	public static String TIPO_PAGINA = "meta[property=og:type]";
	public static String IAMGEM = "meta[property=og:image]";
	public static String VIDEO = "meta[property=og:video]";
	
	public static String DURACAO = "meta[itemprop=duration]";
	public static String AUTOR = "watch7-user-header";
	public static String LIKES = "span[class=likes-count]";
	public static String DISLIKES = "span[class=dislikes-count]";
	public static String DATA = "span[id=eow-date]";
	public static String CATEGORIA = "p[id=eow-category]";
	public static String VISUALIZACOES = "watch7-views-info";
	
	public static String RESULTADOPESQUISA = "a[dir=ltr][href^=/watch?v=][class][data-sessionlink][title]";
	public static String URLSEED = "http://www.youtube.com/";	   
	
	public static void setUrl(String url) {
		URLSEED = url;
	}
	
	public static List<String> LISTA_TERMOS = new ArrayList<String>();
	
	public static void termos() {
		String arquivo = Parametros.ARMAZENAMENTO + Parametros.SEPARATOR + "TermosPesquisa.txt";
		List<String> listaTermos = new ArrayList<String>();  
		try {
			BufferedReader arquivoBufferizado = new BufferedReader(new InputStreamReader(new FileInputStream(arquivo), "UTF-8"));
			String linha;
			linha = arquivoBufferizado.readLine();			
			while(arquivoBufferizado.ready()) {
				listaTermos.add(linha);
				linha = arquivoBufferizado.readLine();
			}
			
			arquivoBufferizado.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		LISTA_TERMOS = listaTermos;
	}
	
	public static List<String> urls() {
		String dir = Parametros.ARMAZENAMENTO + Parametros.SEPARATOR + "PesquisaYoutube"; 
		File diretorio = new File(dir); 
		
		List<String> listaUrls = new ArrayList<String>();
		
		for (File arquivo : diretorio.listFiles()) {
		
			try {
				BufferedReader arquivoBufferizado = new BufferedReader(new InputStreamReader(new FileInputStream(arquivo), "UTF-8"));
				String linha;
				linha = arquivoBufferizado.readLine();			
				while(arquivoBufferizado.ready()) {
					listaUrls.add(linha);
					linha = arquivoBufferizado.readLine();
				}
				
				arquivoBufferizado.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		
		return listaUrls;
	}
	
	public static List<String> urlsUnicoArquivo(int numeroArquivo) {
		String dir = Parametros.ARMAZENAMENTO + Parametros.SEPARATOR + "PesquisaYoutube" + Parametros.SEPARATOR + "consulta-" + numeroArquivo + ".txt"; 
		File arquivo = new File(dir); 
		
		List<String> listaUrls = new ArrayList<String>();
		
		try {
			BufferedReader arquivoBufferizado = new BufferedReader(new InputStreamReader(new FileInputStream(arquivo), "UTF-8"));
			String linha;
			linha = arquivoBufferizado.readLine();			
			while(arquivoBufferizado.ready()) {
				listaUrls.add(linha);
				linha = arquivoBufferizado.readLine();
			}
			
			arquivoBufferizado.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
		
		return listaUrls;
	}
}
